package exdends_constructor;
//认识子类构造器的特点：子类的全部构造器，都会先调用父类的构造器在执行自己。
public class Text {
    public static void main(String[] args) {
        Z z = new Z();
        Z z2 = new Z("波妞");
    }

}
class F{
//    public F(){
//        //super();//默认存在的
//        System.out.println("父类F的无参数构造器执行啦");
//    }     //假如父类没有无参数构造器会出现什么情况
    //有参数构造器写出来以后，默认的无参构造器就没有了，
// 此时子类的所有构造器都报错了 ，怎么办，在子类的构造器里手写super（），指定去调用父类的有参构造器
    public F(String name ,int age){


    }
}
class Z extends F{
    //super();//默认存在的
    public  Z(){
        super("波妞",18);
        System.out.println("子类Z的无参数构造器被执行啦");
    }

    public Z(String name){
        super("波妞",18);
        System.out.println("子类Z的有参数构造器被执行了");
    }
}